[INFO] fetching crate kodik-parser 2.1.0...
[INFO] testing kodik-parser-2.1.0 against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] extracting crate kodik-parser 2.1.0 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate kodik-parser 2.1.0
[INFO] finished tweaking crates.io crate kodik-parser 2.1.0
[INFO] tweaked toml for crates.io crate kodik-parser 2.1.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate kodik-parser 2.1.0 on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate kodik-parser 2.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ua_generator v0.5.53
[INFO] [stderr]   Downloaded aws-lc-rs v1.16.1
[INFO] [stderr]   Downloaded aws-lc-sys v0.38.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bc7ee3401f4e428234e7ca0dc5b4919ba2b3eb4f6c91ccd8d3edde54d437883c
[INFO] running `Command { std: "docker" "start" "-a" "bc7ee3401f4e428234e7ca0dc5b4919ba2b3eb4f6c91ccd8d3edde54d437883c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bc7ee3401f4e428234e7ca0dc5b4919ba2b3eb4f6c91ccd8d3edde54d437883c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc7ee3401f4e428234e7ca0dc5b4919ba2b3eb4f6c91ccd8d3edde54d437883c", kill_on_drop: false }`
[INFO] [stdout] bc7ee3401f4e428234e7ca0dc5b4919ba2b3eb4f6c91ccd8d3edde54d437883c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c25196ddf2818689ff7714533c40c97f6e87814cf2a166405379cb1d1756d413
[INFO] running `Command { std: "docker" "start" "-a" "c25196ddf2818689ff7714533c40c97f6e87814cf2a166405379cb1d1756d413", kill_on_drop: false }`
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling ua_generator v0.5.53
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling kodik-parser v2.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: static `SHIFT` is never used
[INFO] [stdout]  --> src/decoder.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | static SHIFT: AtomicU8 = AtomicU8::new(0);
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_links` is never used
[INFO] [stdout]  --> src/decoder.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn decode_links(kodik_response: &mut KodikResponse) -> Result<(), KodikError> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_link` is never used
[INFO] [stdout]   --> src/decoder.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn decode_link(src: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_decode` is never used
[INFO] [stdout]   --> src/decoder.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn try_decode(src: &str, shift: u8) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `caesar_cipher` is never used
[INFO] [stdout]   --> src/decoder.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn caesar_cipher(text: &str, shift: u8) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b64` is never used
[INFO] [stdout]   --> src/decoder.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn b64(input: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stdout]   --> src/parser.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_domain` is never used
[INFO] [stdout]   --> src/parser.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn get_domain(url: &str) -> Result<&str, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_video_info` is never used
[INFO] [stdout]   --> src/parser.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn extract_video_info(response_text: &'_ str) -> Result<VideoInfo<'_>, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_player_url` is never used
[INFO] [stdout]    --> src/parser.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn extract_player_url(domain: &str, response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_api_endpoint` is never used
[INFO] [stdout]    --> src/parser.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn get_api_endpoint(kodik_response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spoof_random_ua` is never used
[INFO] [stdout]  --> src/util.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spoof_random_ua() -> &'static str {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.50s
[INFO] running `Command { std: "docker" "inspect" "c25196ddf2818689ff7714533c40c97f6e87814cf2a166405379cb1d1756d413", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c25196ddf2818689ff7714533c40c97f6e87814cf2a166405379cb1d1756d413", kill_on_drop: false }`
[INFO] [stdout] c25196ddf2818689ff7714533c40c97f6e87814cf2a166405379cb1d1756d413
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2ec545207ace053cf89d0185cd3614a251e28860490d46638dc0e85db494f04c
[INFO] running `Command { std: "docker" "start" "-a" "2ec545207ace053cf89d0185cd3614a251e28860490d46638dc0e85db494f04c", kill_on_drop: false }`
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling kodik-parser v2.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: static `SHIFT` is never used
[INFO] [stdout]  --> src/decoder.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | static SHIFT: AtomicU8 = AtomicU8::new(0);
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_links` is never used
[INFO] [stdout]  --> src/decoder.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn decode_links(kodik_response: &mut KodikResponse) -> Result<(), KodikError> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_link` is never used
[INFO] [stdout]   --> src/decoder.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn decode_link(src: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_decode` is never used
[INFO] [stdout]   --> src/decoder.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn try_decode(src: &str, shift: u8) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `caesar_cipher` is never used
[INFO] [stdout]   --> src/decoder.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn caesar_cipher(text: &str, shift: u8) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b64` is never used
[INFO] [stdout]   --> src/decoder.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn b64(input: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stdout]   --> src/parser.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_domain` is never used
[INFO] [stdout]   --> src/parser.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn get_domain(url: &str) -> Result<&str, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_video_info` is never used
[INFO] [stdout]   --> src/parser.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn extract_video_info(response_text: &'_ str) -> Result<VideoInfo<'_>, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_player_url` is never used
[INFO] [stdout]    --> src/parser.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn extract_player_url(domain: &str, response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_api_endpoint` is never used
[INFO] [stdout]    --> src/parser.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn get_api_endpoint(kodik_response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spoof_random_ua` is never used
[INFO] [stdout]  --> src/util.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spoof_random_ua() -> &'static str {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stdout]   --> src/parser.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 10.75s
[INFO] running `Command { std: "docker" "inspect" "2ec545207ace053cf89d0185cd3614a251e28860490d46638dc0e85db494f04c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ec545207ace053cf89d0185cd3614a251e28860490d46638dc0e85db494f04c", kill_on_drop: false }`
[INFO] [stdout] 2ec545207ace053cf89d0185cd3614a251e28860490d46638dc0e85db494f04c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] d53145f59acd4798138d8d6363a5e4502ae0f142f0706532502f80472abdda8c
[INFO] running `Command { std: "docker" "start" "-a" "d53145f59acd4798138d8d6363a5e4502ae0f142f0706532502f80472abdda8c", kill_on_drop: false }`
[INFO] [stderr] warning: static `SHIFT` is never used
[INFO] [stderr]  --> src/decoder.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | static SHIFT: AtomicU8 = AtomicU8::new(0);
[INFO] [stderr]   |        ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `decode_links` is never used
[INFO] [stderr]  --> src/decoder.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub fn decode_links(kodik_response: &mut KodikResponse) -> Result<(), KodikError> {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `decode_link` is never used
[INFO] [stderr]   --> src/decoder.rs:41:4
[INFO] [stderr]    |
[INFO] [stderr] 41 | fn decode_link(src: &str) -> Result<String, KodikError> {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_decode` is never used
[INFO] [stderr]   --> src/decoder.rs:60:4
[INFO] [stderr]    |
[INFO] [stderr] 60 | fn try_decode(src: &str, shift: u8) -> Result<String, KodikError> {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `caesar_cipher` is never used
[INFO] [stderr]   --> src/decoder.rs:70:4
[INFO] [stderr]    |
[INFO] [stderr] 70 | fn caesar_cipher(text: &str, shift: u8) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `b64` is never used
[INFO] [stderr]   --> src/decoder.rs:86:8
[INFO] [stderr]    |
[INFO] [stderr] 86 | pub fn b64(input: &str) -> Result<String, KodikError> {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stderr]   --> src/parser.rs:10:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_domain` is never used
[INFO] [stderr]   --> src/parser.rs:56:8
[INFO] [stderr]    |
[INFO] [stderr] 56 | pub fn get_domain(url: &str) -> Result<&str, KodikError> {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `extract_video_info` is never used
[INFO] [stderr]   --> src/parser.rs:68:8
[INFO] [stderr]    |
[INFO] [stderr] 68 | pub fn extract_video_info(response_text: &'_ str) -> Result<VideoInfo<'_>, KodikError> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `extract_player_url` is never used
[INFO] [stderr]    --> src/parser.rs:114:8
[INFO] [stderr]     |
[INFO] [stderr] 114 | pub fn extract_player_url(domain: &str, response_text: &str) -> Result<String, KodikError> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_api_endpoint` is never used
[INFO] [stderr]    --> src/parser.rs:129:8
[INFO] [stderr]     |
[INFO] [stderr] 129 | pub fn get_api_endpoint(kodik_response_text: &str) -> Result<String, KodikError> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `spoof_random_ua` is never used
[INFO] [stderr]  --> src/util.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn spoof_random_ua() -> &'static str {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `kodik-parser` (lib) generated 12 warnings
[INFO] [stderr] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stderr]   --> src/parser.rs:10:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `kodik-parser` (lib test) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kodik_parser-71a44964df1821bd)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test decoder::tests::caesar_cipher_test ... ok
[INFO] [stdout] test decoder::tests::b64_test ... ok
[INFO] [stdout] test scraper::tests::links_deserialization ... ok
[INFO] [stdout] test decoder::tests::try_decoding ... ok
[INFO] [stdout] test decoder::tests::decoding_links ... ok
[INFO] [stdout] test decoder::tests::decoding_link ... ok
[INFO] [stdout] test scraper::tests::kodik_response_deserialization ... ok
[INFO] [stdout] test parser::tests::video_info_serializing ... ok
[INFO] [stdout] test util::tests::random_agent_is_not_always_same ... ok
[INFO] [stdout] test scraper::tests::link_deserialization ... ok
[INFO] [stdout] test parser::tests::getting_domain ... ok
[INFO] [stdout] test parser::tests::extracting_video_info ... ok
[INFO] [stdout] test parser::tests::getting_api_endpoint ... ok
[INFO] [stdout] test parser::tests::getting_player_url ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests kodik_parser
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "d53145f59acd4798138d8d6363a5e4502ae0f142f0706532502f80472abdda8c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d53145f59acd4798138d8d6363a5e4502ae0f142f0706532502f80472abdda8c", kill_on_drop: false }`
[INFO] [stdout] d53145f59acd4798138d8d6363a5e4502ae0f142f0706532502f80472abdda8c
